package com.ruoyi.sl.domain;

import java.math.BigDecimal;
import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 零工报工对象 sl_oddjob
 *
 * @author admin
 * @date 2024-06-11
 */
public class SlOddjob extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 零工ID */
    private Long oddjobId;

    /** 报工日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "报工日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date oddjobDate;

    /** 模块 */
    private Long moduleId;

    /** 年 */
    @Excel(name = "年")
    private String oddjobYear;

    /** 月 */
    @Excel(name = "月")
    private String oddjobMonth;

    /** 日 */
    @Excel(name = "日")
    private String oddjobDay;

    /** 审核状态 */
    @Excel(name = "审核状态")
    private String isApproved;

    /** 直属领导 */
    @Excel(name = "直属领导")
    private String leaderUser;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date oddjobStart;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "结束时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date oddjobEnd;

    /** 时长 */
    @Excel(name = "时长")
    private BigDecimal oddjobDuration;

    /** 时薪 */
    @Excel(name = "时薪")
    private BigDecimal wmPay;

    /** 预估工资 */
    @Excel(name = "预估工资")
    private BigDecimal estimatePay;

    /** 报工人 */
    @Excel(name = "报工人")
    private String oddjobUser;

    /** 出工方式 */
    @Excel(name = "出工方式")
    private Long wmId;

    /** 早晚班 */
    @Excel(name = "早晚班")
    private String oddjobBz;

    /** 计薪单位 */
    @Excel(name = "计薪单位")
    private String wmUnit;

    /** 报工单ID */
    @Excel(name = "报工单ID")
    private Long rfworkId;

    /** 扣款 */
    @Excel(name = "扣款")
    private BigDecimal oddjobDm;

    @Excel(name = "出工方式", targetAttr = "wmName", type = Excel.Type.EXPORT)
    private SlWm wm;

    /** 零工操作人信息 */
    private List<SlOddjobOmember> slOddjobOmemberList;

    /** 大工序 */
    private Long gprocessId;

    @Excel(name = "大工序", targetAttr = "gprocessName", type = Excel.Type.EXPORT)
    private SlGprocess slGprocess;

    /** 工序 */
    private Long processId;

    @Excel(name = "小工序", targetAttr = "processName", type = Excel.Type.EXPORT)
    private SlProcess slProcess;

    @Excel(name = "模块", targetAttr = "muduleName", type = Excel.Type.EXPORT)
    private SlModule slModule;

    /** 车间 */
    private Long workshopId;

    @Excel(name = "车间", targetAttr = "workshopName", type = Excel.Type.EXPORT)
    private SlWorkshop slWorkshop;

    /** 产量 */
    private BigDecimal oddjobActual;

    public Long getGprocessId() {
        return gprocessId;
    }

    public void setGprocessId(Long gprocessId) {
        this.gprocessId = gprocessId;
    }

    public SlGprocess getSlGprocess() {
        return slGprocess;
    }

    public void setSlGprocess(SlGprocess slGprocess) {
        this.slGprocess = slGprocess;
    }

    public Long getProcessId() {
        return processId;
    }

    public void setProcessId(Long processId) {
        this.processId = processId;
    }

    public SlProcess getSlProcess() {
        return slProcess;
    }

    public void setSlProcess(SlProcess slProcess) {
        this.slProcess = slProcess;
    }

    public SlModule getSlModule() {
        return slModule;
    }

    public void setSlModule(SlModule slModule) {
        this.slModule = slModule;
    }

    public Long getWorkshopId() {
        return workshopId;
    }

    public void setWorkshopId(Long workshopId) {
        this.workshopId = workshopId;
    }

    public SlWorkshop getSlWorkshop() {
        return slWorkshop;
    }

    public void setSlWorkshop(SlWorkshop slWorkshop) {
        this.slWorkshop = slWorkshop;
    }

    public BigDecimal getOddjobActual() {
        return oddjobActual;
    }

    public void setOddjobActual(BigDecimal oddjobActual) {
        this.oddjobActual = oddjobActual;
    }

    public void setOddjobId(Long oddjobId)
    {
        this.oddjobId = oddjobId;
    }

    public Long getOddjobId()
    {
        return oddjobId;
    }
    public void setOddjobDate(Date oddjobDate)
    {
        this.oddjobDate = oddjobDate;
    }

    public Date getOddjobDate()
    {
        return oddjobDate;
    }
    public void setModuleId(Long moduleId)
    {
        this.moduleId = moduleId;
    }

    public Long getModuleId()
    {
        return moduleId;
    }
    public void setOddjobYear(String oddjobYear)
    {
        this.oddjobYear = oddjobYear;
    }

    public String getOddjobYear()
    {
        return oddjobYear;
    }
    public void setOddjobMonth(String oddjobMonth)
    {
        this.oddjobMonth = oddjobMonth;
    }

    public String getOddjobMonth()
    {
        return oddjobMonth;
    }
    public void setOddjobDay(String oddjobDay)
    {
        this.oddjobDay = oddjobDay;
    }

    public String getOddjobDay()
    {
        return oddjobDay;
    }
    public void setIsApproved(String isApproved)
    {
        this.isApproved = isApproved;
    }

    public String getIsApproved()
    {
        return isApproved;
    }
    public void setLeaderUser(String leaderUser)
    {
        this.leaderUser = leaderUser;
    }

    public String getLeaderUser()
    {
        return leaderUser;
    }
    public void setOddjobStart(Date oddjobStart)
    {
        this.oddjobStart = oddjobStart;
    }

    public Date getOddjobStart()
    {
        return oddjobStart;
    }
    public void setOddjobEnd(Date oddjobEnd)
    {
        this.oddjobEnd = oddjobEnd;
    }

    public Date getOddjobEnd()
    {
        return oddjobEnd;
    }
    public void setOddjobDuration(BigDecimal oddjobDuration)
    {
        this.oddjobDuration = oddjobDuration;
    }

    public BigDecimal getOddjobDuration()
    {
        return oddjobDuration;
    }
    public void setWmPay(BigDecimal wmPay)
    {
        this.wmPay = wmPay;
    }

    public BigDecimal getWmPay()
    {
        return wmPay;
    }
    public void setEstimatePay(BigDecimal estimatePay)
    {
        this.estimatePay = estimatePay;
    }

    public BigDecimal getEstimatePay()
    {
        return estimatePay;
    }
    public void setOddjobUser(String oddjobUser)
    {
        this.oddjobUser = oddjobUser;
    }

    public String getOddjobUser()
    {
        return oddjobUser;
    }
    public void setWmId(Long wmId)
    {
        this.wmId = wmId;
    }

    public Long getWmId()
    {
        return wmId;
    }

    public List<SlOddjobOmember> getSlOddjobOmemberList()
    {
        return slOddjobOmemberList;
    }

    public void setSlOddjobOmemberList(List<SlOddjobOmember> slOddjobOmemberList)
    {
        this.slOddjobOmemberList = slOddjobOmemberList;
    }
    public void setOddjobBz(String oddjobBz)
    {
        this.oddjobBz = oddjobBz;
    }

    public String getOddjobBz()
    {
        return oddjobBz;
    }

    public void setWmUnit(String wmUnit)
    {
        this.wmUnit = wmUnit;
    }

    public String getWmUnit()
    {
        return wmUnit;
    }

    public SlWm getWm() {
        return wm;
    }

    public void setWm(SlWm wm) {
        this.wm = wm;
    }

    public Long getRfworkId() {
        return rfworkId;
    }

    public void setRfworkId(Long rfworkId) {
        this.rfworkId = rfworkId;
    }

    public BigDecimal getOddjobDm() {
        return oddjobDm;
    }

    public void setOddjobDm(BigDecimal oddjobDm) {
        this.oddjobDm = oddjobDm;
    }

    @Override
    public String toString() {
        return "SlOddjob{" +
                "oddjobId=" + oddjobId +
                ", oddjobDate=" + oddjobDate +
                ", moduleId=" + moduleId +
                ", oddjobYear='" + oddjobYear + '\'' +
                ", oddjobMonth='" + oddjobMonth + '\'' +
                ", oddjobDay='" + oddjobDay + '\'' +
                ", isApproved='" + isApproved + '\'' +
                ", leaderUser='" + leaderUser + '\'' +
                ", oddjobStart=" + oddjobStart +
                ", oddjobEnd=" + oddjobEnd +
                ", oddjobDuration=" + oddjobDuration +
                ", wmPay=" + wmPay +
                ", estimatePay=" + estimatePay +
                ", oddjobUser='" + oddjobUser + '\'' +
                ", wmId=" + wmId +
                ", oddjobBz='" + oddjobBz + '\'' +
                ", wmUnit='" + wmUnit + '\'' +
                ", rfworkId=" + rfworkId +
                ", oddjobDm=" + oddjobDm +
                ", wm=" + wm +
                ", slOddjobOmemberList=" + slOddjobOmemberList +
                ", gprocessId=" + gprocessId +
                ", slGprocess=" + slGprocess +
                ", processId=" + processId +
                ", slProcess=" + slProcess +
                ", slModule=" + slModule +
                ", workshopId=" + workshopId +
                ", slWorkshop=" + slWorkshop +
                ", oddjobActual=" + oddjobActual +
                '}';
    }
}
